# /bin/bash

ROOT_DIR="/home/www/blog-web"
APP_NAME=blog-web.jar
NOW_DATE=$(date +%c)

JAR_OPS=${ROOT_DIR}/${APP_NAME}
JAR_OPS=${JAR_OPS} "-Dspring.profiles.active=prod"
JAR_OPS=${JAR_OPS} "-Dspring.datasource.url=${database_url}"
JAR_OPS=${JAR_OPS} "-Ddatabase_port=${database_port}"
JAR_OPS=${JAR_OPS} "-Ddatabase_user=${database_user}"
JAR_OPS=${JAR_OPS} "-Ddatabase_pwd=${database_pwd}"
JAR_OPS=${JAR_OPS} "-Dredis_url=${redis_url}"
JAR_OPS=${JAR_OPS} "-Dredis_pwd=${redis_pwd}"

usage() {
  echo "用法: sh blog-web.sh [start(启动)|stop(停止)|restart(重启)|status(状态)|log(实时监控日志)]"
  exit 1
}

cd ${ROOT_DIR}

echo "当前时间：${NOW_DATE}"
is_exist() {
  pid=$(ps -ef | grep ${APP_NAME} | grep -v grep | awk '{print $2}')
  if [[ -z "${pid}" ]]; then
    return 1
  else
    return 0
  fi
}

start() {
  is_exist
  if [[ $? -eq "0" ]]; then
    echo "${APP_NAME} 正在运行。 pid=${pid} ."
  else
   java -server -Xms256m -Xmx512m -jar ${JAR_OPS}
   echo "${APP_NAME}启动成功，请查看日志确保运行正常。"
  fi
}

stop() {
  is_exist
  if [[ $? -eq "0" ]]; then
    kill -9 $pid
    echo "${pid} 进程已被杀死，程序停止运行"
  else
    echo "${APP_NAME} 未运行！"
  fi
}

status() {
  is_exist
  if [[ $? -eq "0" ]]; then
    echo "${APP_NAME} 正在运行。Pid is ${pid}"
  else
    echo "${APP_NAME} 未运行！"
  fi
}

log() {
  echo "日志文件位置：${ROOT_DIR}/nohup.out"
  tail -f ${ROOT_DIR}/nohup.out
}

restart() {
  stop
  start
  log
}

case "$1" in
"start")
  start
  ;;
"stop")
  stop
  ;;
"status")
  status
  ;;
"restart")
  restart
  ;;
"log")
  log
  ;;
*)
  usage
  ;;
esac
